package com.itcncp.wechat.app.dao.model;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

public class ItcsStationInfo implements Serializable {
    /**
     * 收费站编号（id）=11位收费路段编号+2位收费站顺序码+1位保留位 
  toll_plaza_id station_id
     *
     * @mbg.generated
     */
    private String stationId;

    private String roadsectionId;

    /**
     * 收费站名称
     *
     * @mbg.generated
     */
    private String name;

    /**
     * 收费站类型 1 &mdash; 共建省界站 2 &mdash; 分建省界站 3 &mdash; 非省界站
     *
     * @mbg.generated
     */
    private Byte type;

    /**
     * 收费广场数量
     *
     * @mbg.generated
     */
    private Integer tollPlazaCount;

    /**
     * 该站在邻省编号 若收费站类型为省界站（共建）或省界站（分建），则填写该收费站在邻省编号。若为其他类型收费站，请填写&ldquo;0
     *
     * @mbg.generated
     */
    private String neighborId;

    private String sectionId;

    private BigDecimal longitude;

    private BigDecimal latitude;

    private Long storeId;

    private Date createTime;

    private Date updateTime;

    private static final long serialVersionUID = 1L;

    public String getStationId() {
        return stationId;
    }

    public void setStationId(String stationId) {
        this.stationId = stationId;
    }

    public String getRoadsectionId() {
        return roadsectionId;
    }

    public void setRoadsectionId(String roadsectionId) {
        this.roadsectionId = roadsectionId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Byte getType() {
        return type;
    }

    public void setType(Byte type) {
        this.type = type;
    }

    public Integer getTollPlazaCount() {
        return tollPlazaCount;
    }

    public void setTollPlazaCount(Integer tollPlazaCount) {
        this.tollPlazaCount = tollPlazaCount;
    }

    public String getNeighborId() {
        return neighborId;
    }

    public void setNeighborId(String neighborId) {
        this.neighborId = neighborId;
    }

    public String getSectionId() {
        return sectionId;
    }

    public void setSectionId(String sectionId) {
        this.sectionId = sectionId;
    }

    public BigDecimal getLongitude() {
        return longitude;
    }

    public void setLongitude(BigDecimal longitude) {
        this.longitude = longitude;
    }

    public BigDecimal getLatitude() {
        return latitude;
    }

    public void setLatitude(BigDecimal latitude) {
        this.latitude = latitude;
    }

    public Long getStoreId() {
        return storeId;
    }

    public void setStoreId(Long storeId) {
        this.storeId = storeId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", stationId=").append(stationId);
        sb.append(", roadsectionId=").append(roadsectionId);
        sb.append(", name=").append(name);
        sb.append(", type=").append(type);
        sb.append(", tollPlazaCount=").append(tollPlazaCount);
        sb.append(", neighborId=").append(neighborId);
        sb.append(", sectionId=").append(sectionId);
        sb.append(", longitude=").append(longitude);
        sb.append(", latitude=").append(latitude);
        sb.append(", storeId=").append(storeId);
        sb.append(", createTime=").append(createTime);
        sb.append(", updateTime=").append(updateTime);
        sb.append("]");
        return sb.toString();
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        ItcsStationInfo other = (ItcsStationInfo) that;
        return (this.getStationId() == null ? other.getStationId() == null : this.getStationId().equals(other.getStationId()))
            && (this.getRoadsectionId() == null ? other.getRoadsectionId() == null : this.getRoadsectionId().equals(other.getRoadsectionId()))
            && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName()))
            && (this.getType() == null ? other.getType() == null : this.getType().equals(other.getType()))
            && (this.getTollPlazaCount() == null ? other.getTollPlazaCount() == null : this.getTollPlazaCount().equals(other.getTollPlazaCount()))
            && (this.getNeighborId() == null ? other.getNeighborId() == null : this.getNeighborId().equals(other.getNeighborId()))
            && (this.getSectionId() == null ? other.getSectionId() == null : this.getSectionId().equals(other.getSectionId()))
            && (this.getLongitude() == null ? other.getLongitude() == null : this.getLongitude().equals(other.getLongitude()))
            && (this.getLatitude() == null ? other.getLatitude() == null : this.getLatitude().equals(other.getLatitude()))
            && (this.getStoreId() == null ? other.getStoreId() == null : this.getStoreId().equals(other.getStoreId()))
            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
            && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getStationId() == null) ? 0 : getStationId().hashCode());
        result = prime * result + ((getRoadsectionId() == null) ? 0 : getRoadsectionId().hashCode());
        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
        result = prime * result + ((getType() == null) ? 0 : getType().hashCode());
        result = prime * result + ((getTollPlazaCount() == null) ? 0 : getTollPlazaCount().hashCode());
        result = prime * result + ((getNeighborId() == null) ? 0 : getNeighborId().hashCode());
        result = prime * result + ((getSectionId() == null) ? 0 : getSectionId().hashCode());
        result = prime * result + ((getLongitude() == null) ? 0 : getLongitude().hashCode());
        result = prime * result + ((getLatitude() == null) ? 0 : getLatitude().hashCode());
        result = prime * result + ((getStoreId() == null) ? 0 : getStoreId().hashCode());
        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
        result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
        return result;
    }
}